import React from 'react';
import type { ProColumns } from '@ant-design/pro-table';
import { deleteUsingPOST2 } from '@/services/test/User';
import { message } from 'antd';

export interface TableProps {
  /** 角色 */
  access?: string;
  /** 创建人 */
  createBy?: string;
  /** 邮箱 */
  email?: string;
  /** id */
  id?: number;
  /** 身份证号码 */
  identityNum?: string;
  /** 修改人 */
  modifyBy?: string;
  /** 姓名 */
  name?: string;
  /** 密码 */
  password?: string;
  /** 电话 */
  phone?: string;
  /** 照片 */
  photo?: string;
  /** 政治面貌 */
  politicsStatus?: string;
  /** 备注 */
  remark?: string;
  /** 性别 */
  sex?: string;
  /** 用户名(Key) */
  username?: string;
  /** 创建时间 */
  utcCreate?: string;
  /** 修改时间 */
  utcModify?: string;
  /** 是否有效 */
  valid?: boolean;
}
const onDelete = async (values: any) => {
  console.log(values);
  await deleteUsingPOST2({ id: values });
  message.success('删除成功');
};

export const getColumns: ProColumns<TableProps>[] = [
  {
    dataIndex: 'index',
    valueType: 'indexBorder',
    width: 48,
  },
  {
    title: '用户名',
    dataIndex: 'username',
  },
  {
    title: '姓名',
    dataIndex: 'name',
  },
  {
    title: '密码',
    dataIndex: 'password',
    search: false,
  },
  {
    title: '电话',
    dataIndex: 'phone',
  },
  {
    title: '性别',
    dataIndex: 'sex',
    search: false,
  },
  {
    title: '身份证号',
    dataIndex: 'identityNum',
  },
  {
    title: '创建时间',
    // key: 'showTime',
    dataIndex: 'utcCreate',
    // valueType: 'time',
    // sorter: true,
    // hideInSearch: true,
  },
  {
    title: '修改时间',
    dataIndex: 'utcModify',
    valueType: 'date',
    search: {
      transform: (value) => {
        return {
          startTime: value[0],
          endTime: value[1],
        };
      },
    },
  },
  {
    title: '操作',
    valueType: 'option',
    render: (text, record, _, action) => [
      <a
        key="editable"
        onClick={() => {
          action?.startEditable?.(record.id);
        }}
      >
        编辑
      </a>,
      <a target="_blank" rel="noopener noreferrer" key="view" onClick={() => onDelete(record.id)}>
        删除
      </a>,
    ],
  },
];
